<?php
class Conta{

	private $id;
	private $banco;
	private $numero;
	private $agencia;
	private $nomeTitular;
	private $autor;
	public function __construct($id,$banco,$numero,$agencia,$nomeTitular,$autor){
		$this->id = $id;
		$this->banco = $banco;
		$this->numero = $numero;
		$this->agencia = $agencia;
		$this->nomeTitular = $nomeTitular;
		$this->autor = $autor;

	}

	public static function construct($array){
		return new Conta( $array['id'], $array['banco'], $array['numero'], $array['agencia'], $array['nomeTitular'], $array['autor']);

	}

	public function getId(){
		return $this->id;
	}

	public function setId($id){
		$this->id=$id;
	}

	public function getBanco(){
		return $this->banco;
	}

	public function setBanco($banco){
		$this->banco=$banco;
	}

	public function getNumero(){
		return $this->numero;
	}

	public function setNumero($numero){
		$this->numero=$numero;
	}

	public function getAgencia(){
		return $this->agencia;
	}

	public function setAgencia($agencia){
		$this->agencia=$agencia;
	}

	public function getNomeTitular(){
		return $this->nomeTitular;
	}

	public function setNomeTitular($nomeTitular){
		$this->nomeTitular=$nomeTitular;
	}

	public function getAutor(){
		return $this->autor;
	}

	public function setAutor($autor){
		$this->autor=$autor;
	}
	public function equals($object){
		if($object instanceof Conta){

			if($this->id!=$object->id){
				return false;

			}

			if($this->banco!=$object->banco){
				return false;

			}

			if($this->numero!=$object->numero){
				return false;

			}

			if($this->agencia!=$object->agencia){
				return false;

			}

			if($this->nomeTitular!=$object->nomeTitular){
				return false;

			}

			if($this->autor!=$object->autor){
				return false;

			}

			return true;

		}
		else{
			return false;
		}

	}
	public function toString(){

		return "  [id:" .$this->id. "]  [banco:" .$this->banco. "]  [numero:" .$this->numero. "]  [agencia:" .$this->agencia. "]  [nomeTitular:" .$this->nomeTitular. "]  [autor:" .$this->autor. "]  " ;
	}
	public function toArray(){
		$className = get_class($this);
		
		$temp = (array) $this;

		$array = array();
		
		foreach ($temp as $k => $v) {
			$k = preg_match('/^\x00(?:.*?)\x00(.+)/', $k, $matches) ? $matches[1] : $k;
			$array[$k] = $v;
		}
		
// 		foreach ($temp as $key => $value){
		
// 			$array[str_replace($className,"", $key)] = $value;
// 		}
		
		return $array;
	}

}
?>